package cn.tedu.bonfire.front.payment.service;

import cn.tedu.bonfire.common.pojo.authentication.CurrentPrincipal;
import cn.tedu.bonfire.front.payment.pojo.param.EditorPayParam;
import cn.tedu.bonfire.front.payment.pojo.param.RewardParam;
import cn.tedu.bonfire.front.payment.pojo.param.WithdrawalParam;
import org.springframework.transaction.annotation.Transactional;

@Transactional
public interface IUserService {

    void reward(RewardParam rewardParam, CurrentPrincipal currentPrincipal);


    void payment(String totalPrice,Long userId);

    void editorPay(EditorPayParam editorPayParam, CurrentPrincipal currentPrincipal);

    boolean checkExpiration(CurrentPrincipal currentPrincipal);

    void updateExpiration();

    int selectExpiration(CurrentPrincipal currentPrincipal);

    void withdrawal(CurrentPrincipal currentPrincipal);
}
